﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using wsUsuarioSOAP.Dominio;

namespace wsUsuarioSOAP
{
    // NOTA: puede usar el comando "Rename" del menú "Refactorizar" para cambiar el nombre de interfaz "IUsuarios" en el código y en el archivo de configuración a la vez.
    [ServiceContract]
    public interface IUsuarios
    {
        // NOTA: puede usar el comando "Rename" del menú "Refactorizar" para cambiar el nombre de interfaz "IService1" en el código y en el archivo de configuración a la vez.
        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        Usuario CrearUsuarios(int id_, string dni_, string nombre_, string email_, string password_, string mensaje_, int idRol_);

        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        Usuario ObtenerUsuario(int id);

        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        Usuario ModificarUsuario(int id, string dni, string email, string mensaje, string nombre_, string password_,int idRol_);

        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        void EliminarUsuario(int id);

        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        List<Usuario> ListarUsuario();

        [FaultContract(typeof(ValidationException))]
        [OperationContract]
        Usuario ValidarUsuario(string usuarioCodigo, string password);
    }
}
